home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / share / automake-1.8 / py-compile < prev    next >
Encoding:
Text File  |  2005-10-16  |  3.0 KB  |  114 lines

  1. #!/bin/sh
  2. # py-compile - Compile a Python program
  3.  
  4. scriptversion=2004-01-12.23
  5.  
  6. # Copyright (C) 2000, 2001, 2003, 2004  Free Software Foundation, Inc.
  7.  
  8. # This program is free software; you can redistribute it and/or modify
  9. # it under the terms of the GNU General Public License as published by
  10. # the Free Software Foundation; either version 2, or (at your option)
  11. # any later version.
  12.  
  13. # This program is distributed in the hope that it will be useful,
  14. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. # GNU General Public License for more details.
  17.  
  18. # You should have received a copy of the GNU General Public License
  19. # along with this program; if not, write to the Free Software
  20. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
  21. # 02111-1307, USA.
  22.  
  23. # As a special exception to the GNU General Public License, if you
  24. # distribute this file as part of a program that contains a
  25. # configuration script generated by Autoconf, you may include it under
  26. # the same distribution terms that you use for the rest of that program.
  27.  
  28. # This file is maintained in Automake, please report
  29. # bugs to <bug-automake@gnu.org> or send patches to
  30. # <automake-patches@gnu.org>.
  31.  
  32. if [ -z "$PYTHON" ]; then
  33.   PYTHON=python
  34. fi
  35.  
  36. basedir=
  37.  
  38. case "$1" in
  39.   --basedir)
  40.     basedir=$2
  41.     if test -z "$basedir"; then
  42.       echo "$0: Missing argument to --basedir." 1>&2
  43.       exit 1
  44.     fi
  45.     shift 2
  46.     ;;
  47.   -h|--h*)
  48.     cat <<\EOF
  49. Usage: py-compile [--help] [--version] [--basedir DIR] FILES..."
  50.  
  51. Byte compile some python scripts FILES.  This should be performed
  52. after they have been moved to the final installation location
  53.  
  54. Report bugs to <bug-automake@gnu.org>.
  55. EOF
  56.     exit 0
  57.     ;;
  58.   -v|--v*)
  59.     echo "py-compile $scriptversion"
  60.     exit 0
  61.     ;;
  62. esac
  63.  
  64. if [ $# = 0 ]; then
  65.     echo "$0: No files given.  Try \`$0 --help' for more information." 1>&2
  66.     exit 1
  67. fi
  68.  
  69. # if basedir was given, then it should be prepended to filenames before
  70. # byte compilation.
  71. if [ -z "$basedir" ]; then
  72.     trans="path = file"
  73. else
  74.     trans="path = os.path.join('$basedir', file)"
  75. fi
  76.  
  77. $PYTHON -c "
  78. import sys, os, string, py_compile
  79.  
  80. files = '''$*'''
  81. print 'Byte-compiling python modules...'
  82. for file in string.split(files):
  83.     $trans
  84.     if not os.path.exists(path) or not (len(path) >= 3 and path[-3:] == '.py'):
  85.     continue
  86.     print file,
  87.     sys.stdout.flush()
  88.     py_compile.compile(path)
  89. print" || exit $?
  90.  
  91. # this will fail for python < 1.5, but that doesn't matter ...
  92. $PYTHON -O -c "
  93. import sys, os, string, py_compile
  94.  
  95. files = '''$*'''
  96. print 'Byte-compiling python modules (optimized versions) ...'
  97. for file in string.split(files):
  98.     $trans
  99.     if not os.path.exists(path) or not (len(path) >= 3 and path[-3:] == '.py'):
  100.     continue
  101.     print file,
  102.     sys.stdout.flush()
  103.     py_compile.compile(path)
  104. print" 2>/dev/null || :
  105.  
  106. # Local Variables:
  107. # mode: shell-script
  108. # sh-indentation: 2
  109. # eval: (add-hook 'write-file-hooks 'time-stamp)
  110. # time-stamp-start: "scriptversion="
  111. # time-stamp-format: "%:y-%02m-%02d.%02H"
  112. # time-stamp-end: "$"
  113. # End:
  114.